/*
 * @Description: 自动加载组件，main.js 引入即可
 * @Author: dh
 * @Date: 2021-11-05 10:11:05
 * @LastEditors: dh
 * @LastEditTime: 2022-07-25 15:42:34
 */

import Vue from "vue";

function changeStr(str) {
	return str.charAt(0).toUpperCase() + str.slice(1);
}

/**
 * @description:实现自动化导入模块
 * @param {directory} 读取文件的路径
 * @param {useSubdirectories} 是否遍历文件的子目录
 * @param {regExp} 匹配文件的正则
 * @return {*}
 */
const requireComponent = require.context("./", false, /\.vue$/); // './'操作对象为当前目录

requireComponent.keys().forEach(element => {
	const config = requireComponent(element);

	const componentName = changeStr(element.replace(/^\.\//, "").replace(/\.\w+$/, ""));

	Vue.component(componentName, config.default || config);
});
